Serveur d'exploration sur la recherche en informatique en Lorraine

Attention, ce site est en cours de développement !
Attention, site généré par des moyens informatiques à partir de corpus bruts.
Les informations ne sont donc pas validées.

Programming with Miracles

Identifieur interne : 003038 ( Main/Exploration ); précédent : 003037; suivant : 003039

Programming with Miracles

Auteurs : Rajeev Joshi [États-Unis]

Source :

RBID : ISTEX:571A663EA264ABD05EF9DBF85B0A351EB4467857

Abstract

Abstract: In his seminal book, A Discipline of Programming [EWD 76], Dijkstra proposed that all sequential programs satisfy four laws for their weakest preconditions. By far the catchiest name was reserved for the Law of the Excluded Miracle, which captured the intuition that, started in a given state, a program execution must either terminate or loop forever. In the late 1980s, both Nelson [GN 89] and Morgan [CCM 90] noted that the law was unnecessarily restrictive when writing programs to be used as specifications. In the years since,“miracles” have become a standard feature in specification languages (for instance, the assume statement in JML [LLP+00] and BoogiePL [DL 05]). What is perhaps surprising is that miracles are not as commonly used in programs written as implementations. This is surprising because for many everyday tasks, programming in a language with miracles is often far superior to the popular scripting languages that are used instead. In this talk, we build upon pioneering work by Burrows and Nelson [GN 05] who designed the language LIM (“Language of the Included Miracle”). We describe a language LIMe (“LIM with extensions”), and discuss its application in the context of flight software testing, including the analysis of spacecraft telemetry logs.

Url:
DOI: 10.1007/978-3-642-16265-7_3


Affiliations:


Links toward previous steps (curation, corpus...)


Le document en format XML

<record>
<TEI wicri:istexFullTextTei="biblStruct">
<teiHeader>
<fileDesc>
<titleStmt>
<title xml:lang="en">Programming with Miracles</title>
<author>
<name sortKey="Joshi, Rajeev" sort="Joshi, Rajeev" uniqKey="Joshi R" first="Rajeev" last="Joshi">Rajeev Joshi</name>
</author>
</titleStmt>
<publicationStmt>
<idno type="wicri:source">ISTEX</idno>
<idno type="RBID">ISTEX:571A663EA264ABD05EF9DBF85B0A351EB4467857</idno>
<date when="2010" year="2010">2010</date>
<idno type="doi">10.1007/978-3-642-16265-7_3</idno>
<idno type="url">https://api.istex.fr/ark:/67375/HCB-1QC477V7-8/fulltext.pdf</idno>
<idno type="wicri:Area/Istex/Corpus">001436</idno>
<idno type="wicri:explorRef" wicri:stream="Istex" wicri:step="Corpus" wicri:corpus="ISTEX">001436</idno>
<idno type="wicri:Area/Istex/Curation">001419</idno>
<idno type="wicri:Area/Istex/Checkpoint">000800</idno>
<idno type="wicri:explorRef" wicri:stream="Istex" wicri:step="Checkpoint">000800</idno>
<idno type="wicri:doubleKey">0302-9743:2010:Joshi R:programming:with:miracles</idno>
<idno type="wicri:Area/Main/Merge">003095</idno>
<idno type="wicri:Area/Main/Curation">003038</idno>
<idno type="wicri:Area/Main/Exploration">003038</idno>
</publicationStmt>
<sourceDesc>
<biblStruct>
<analytic>
<title level="a" type="main" xml:lang="en">Programming with Miracles</title>
<author>
<name sortKey="Joshi, Rajeev" sort="Joshi, Rajeev" uniqKey="Joshi R" first="Rajeev" last="Joshi">Rajeev Joshi</name>
<affiliation wicri:level="2">
<country xml:lang="fr">États-Unis</country>
<wicri:regionArea>Laboratory for Reliable Software, NASA Jet Propulsion Laboratory, Pasadena, CA</wicri:regionArea>
<placeName>
<region type="state">Californie</region>
</placeName>
</affiliation>
</author>
</analytic>
<monogr></monogr>
<series>
<title level="s" type="main" xml:lang="en">Lecture Notes in Computer Science</title>
<idno type="ISSN">0302-9743</idno>
<idno type="eISSN">1611-3349</idno>
<idno type="ISSN">0302-9743</idno>
</series>
</biblStruct>
</sourceDesc>
<seriesStmt>
<idno type="ISSN">0302-9743</idno>
</seriesStmt>
</fileDesc>
<profileDesc>
<textClass></textClass>
</profileDesc>
</teiHeader>
<front>
<div type="abstract" xml:lang="en">Abstract: In his seminal book, A Discipline of Programming [EWD 76], Dijkstra proposed that all sequential programs satisfy four laws for their weakest preconditions. By far the catchiest name was reserved for the Law of the Excluded Miracle, which captured the intuition that, started in a given state, a program execution must either terminate or loop forever. In the late 1980s, both Nelson [GN 89] and Morgan [CCM 90] noted that the law was unnecessarily restrictive when writing programs to be used as specifications. In the years since,“miracles” have become a standard feature in specification languages (for instance, the assume statement in JML [LLP+00] and BoogiePL [DL 05]). What is perhaps surprising is that miracles are not as commonly used in programs written as implementations. This is surprising because for many everyday tasks, programming in a language with miracles is often far superior to the popular scripting languages that are used instead. In this talk, we build upon pioneering work by Burrows and Nelson [GN 05] who designed the language LIM (“Language of the Included Miracle”). We describe a language LIMe (“LIM with extensions”), and discuss its application in the context of flight software testing, including the analysis of spacecraft telemetry logs.</div>
</front>
</TEI>
<affiliations>
<list>
<country>
<li>États-Unis</li>
</country>
<region>
<li>Californie</li>
</region>
</list>
<tree>
<country name="États-Unis">
<region name="Californie">
<name sortKey="Joshi, Rajeev" sort="Joshi, Rajeev" uniqKey="Joshi R" first="Rajeev" last="Joshi">Rajeev Joshi</name>
</region>
</country>
</tree>
</affiliations>
</record>

Pour manipuler ce document sous Unix (Dilib)

EXPLOR_STEP=$WICRI_ROOT/Wicri/Lorraine/explor/InforLorV4/Data/Main/Exploration
HfdSelect -h $EXPLOR_STEP/biblio.hfd -nk 003038 | SxmlIndent | more

Ou

HfdSelect -h $EXPLOR_AREA/Data/Main/Exploration/biblio.hfd -nk 003038 | SxmlIndent | more

Pour mettre un lien sur cette page dans le réseau Wicri

{{Explor lien
   |wiki=    Wicri/Lorraine
   |area=    InforLorV4
   |flux=    Main
   |étape=   Exploration
   |type=    RBID
   |clé=     ISTEX:571A663EA264ABD05EF9DBF85B0A351EB4467857
   |texte=   Programming with Miracles
}}

Wicri

This area was generated with Dilib version V0.6.33.
Data generation: Mon Jun 10 21:56:28 2019. Site generation: Fri Feb 25 15:29:27 2022